21 #include <amcredentials.h>
35 #define CM_USERNAMELENGTH 256
36 #define PASSWORD_LENGTH UD_NQ_MAXPWDLEN
37 #define DOMAIN_LENGTH (CM_NQ_HOSTNAMESIZE)
45 #define NOTIFY_SRCH_HANDLE_ERROR 1
46 #define NOTIFY_FILE_HANDLE_ERROR 2
54 #define CIFS_ATTR_READONLY 0x01
55 #define CIFS_ATTR_HIDDEN 0x02
56 #define CIFS_ATTR_SYSTEM 0x04
57 #define CIFS_ATTR_VOLUME 0x08
58 #define CIFS_ATTR_DIR 0x10
59 #define CIFS_ATTR_ARCHIVE 0x20
60 #define CIFS_ATTR_ALL (CIFS_ATTR_HIDDEN | CIFS_ATTR_SYSTEM | CIFS_ATTR_DIR)
68 #define FILE_AM_READ 0
69 #define FILE_AM_WRITE 1
70 #define FILE_AM_READ_WRITE 2
71 #define FILE_AM_SPECIAL_MASK 0x8000000
84 #define FILE_SM_COMPAT 0
85 #define FILE_SM_EXCLUSIVE 1
86 #define FILE_SM_DENY_WRITE 2
87 #define FILE_SM_DENY_READ 3
88 #define FILE_SM_DENY_NONE 4
96 #define FILE_LCL_UNKNOWN 0
97 #define FILE_LCL_SEQUENTIAL 1
98 #define FILE_LCL_RANDOM 2
99 #define FILE_LCL_MIXED 3
107 #define FILE_CA_FAIL 0
108 #define FILE_CA_CREATE 1
117 #define FILE_OA_FAIL 0
118 #define FILE_OA_OPEN 1
119 #define FILE_OA_TRUNCATE 2
128 #define SEEK_FILE_BEGIN 0
129 #define SEEK_FILE_CURRENT 1
130 #define SEEK_FILE_END 2
139 #define NQ_CC_AUTH_LM_AND_NTLM 1
140 #define NQ_CC_AUTH_NTLM 2
141 #define NQ_CC_AUTH_NTLM_V2 3
142 #if defined(UD_CC_INCLUDEEXTENDEDSECURITY_KERBEROS) || defined(DOXYGEN)
143 #define NQ_CC_AUTH_SPNEGO_KERBEROS 4
152 #define CC_LOGON_TYPE_REGULAR 0
153 #define CC_LOGON_TYPE_ANONYMOUS 1
154 #define CC_LOGON_TYPE_GUEST 2
162 #define CC_CAPABILITY_DFS 0x00000001
163 #define CC_CAPABILITY_LEASING 0x00000002
164 #define CC_CAPABILITY_LARGE_MTU 0x00000004
165 #define CC_CAPABILITY_MULTI_CHANNEL 0x00000008
166 #define CC_CAPABILITY_PERSISTENT_HANDLES 0x00000010
167 #define CC_CAPABILITY_DIRECTORY_LEASING 0x00000020
168 #define CC_CAPABILITY_ENCRYPTION 0x00000040
176 #define CC_SIGNING_ENABLED 0x0001
177 #define CC_SIGNING_REQUIRED 0x0002
1480 #if defined(UD_NQ_USETRANSPORTNETBIOS) || defined(DOXYGEN)
1502 #if defined(UD_CC_INCLUDEBROWSING) || defined(DOXYGEN)
1508 #if defined(UD_NQ_USETRANSPORTNETBIOS) || defined(DOXYGEN)
1872 #if defined(UD_CC_INCLUDEDOMAINMEMBERSHIP) || defined(DOXYGEN)
2124 #if defined(UD_CC_INCLUDESECURITYDESCRIPTORS) || defined(DOXYGEN)
2249 #if defined(UD_NQ_INCLUDESMB1) || defined(DOXYGEN)
CCServerInfo serverInfo
Definition: ccapi.h:352
NQ_BOOL ccDomainLeave(const NQ_WCHAR *domain, const NQ_WCHAR *computer, const AMCredentials *admin)
NQ_BOOL ccSetFileSizeByHandle(NQ_HANDLE handle, NQ_UINT64 size)
NQ_CHAR * comment
Definition: ccapi.h:362
NQ_BOOL ccSetSmbDialect(CCSmbDialect dialect, NQ_BOOL setActive)
NQ_INT ccGetMaxSecurityLevel(void)
NQ_INT ccAddMount(const NQ_WCHAR *mountPoint, const NQ_WCHAR *remotePath, NQ_BOOL connect)
NQ_BOOL ccGetFileInformationByNameA(const NQ_CHAR *fileName, FileInfo_t *fileInfo)
NQ_UINT32 fileSizeHigh
Definition: ccapi.h:251
NQ_UINT32 lastAccessTimeLow
Definition: ccapi.h:225
NQ_UINT sectorsPerCluster
Definition: ccapi.h:303
const NQ_WCHAR * ccNetworkGetNextItemName(NQ_HANDLE handle)
CCSmbDialect
Definition: ccapi.h:185
NQ_BOOL ccGetMountInformationA(const NQ_CHAR *mountPoint, CCMountInfoA *mountPointInfo)
NQ_BOOL ccDomainLeaveA(const NQ_CHAR *domain, const NQ_CHAR *computer, const AMCredentialsA *admin)
NQ_UINT32 allocationSizeLow
Definition: ccapi.h:252
NQ_UINT32 allocationSizeHigh
Definition: ccapi.h:253
CCNetShareItem * ccNetworkGetNextShareItem(NQ_HANDLE handle)
NQ_UINT64 lastWriteTime
Definition: ccapi.h:288
NQ_BOOL ccDomainJoinA(const NQ_CHAR *domain, const NQ_CHAR *computer, const AMCredentialsA *admin, NQ_BYTE secret[16])
unsigned int NQ_UINT
Definition: udapi.h:29
NQ_UINT32 lastAccessTimeLow
Definition: ccapi.h:264
NQ_BOOL ccDomainUpdateSecret(const NQ_WCHAR *domain, const NQ_WCHAR *computer, const AMCredentials *admin, NQ_BYTE secret[16])
NQ_BOOL ccFindNextFileA(NQ_HANDLE handle, FindFileDataA_t *findFileData)
NQ_IPADDRESS * ips
Definition: ccapi.h:327
NQ_BOOL ccGetDiskFreeSpaceA(const NQ_CHAR *pathName, NQ_UINT *sectorsPerCluster, NQ_UINT *bytesPerSector, NQ_UINT *freeClusters, NQ_UINT *totalClusters, NQ_UINT *fsType, NQ_UINT *serialNumber)
NQ_TIME creationTime
Definition: ccapi.h:337
void ccThreadSubscribe(void)
NQ_BOOL ccSetGetBackupListTimeout(NQ_UINT32 seconds)
NQ_BOOL ccValidateUser(NQ_WCHAR *server)
NQ_FLOAT writeAmount
Definition: ccapi.h:317
NQ_CHAR fileName[CM_BUFFERLENGTH(NQ_CHAR, UD_FS_FILENAMECOMPONENTLEN)]
Definition: ccapi.h:236
NQ_BOOL ccDomainLogon(const NQ_WCHAR *domain, const NQ_WCHAR *computer, const AMCredentials *admin, NQ_BYTE secret[16])
NQ_UINT64 creationTime
Definition: ccapi.h:286
NQ_HANDLE ccNetworkEnumerateDomains(void)
NQ_UINT64 freeClusters
Definition: ccapi.h:305
NQ_UINT32 attributes
Definition: ccapi.h:292
NQ_UINT32 lastAccessTimeHigh
Definition: ccapi.h:245
NQ_WCHAR * name
Definition: ccapi.h:386
NQ_BOOL ccRemoveDirectory(const NQ_WCHAR *pathName)
NQ_UINT32 type
Definition: ccapi.h:377
NQ_UINT32 lastAccessTimeHigh
Definition: ccapi.h:226
NQ_UINT32 fileNameLength
Definition: ccapi.h:235
NQ_BOOL ccGetSigningPolicy(void)
NQ_HANDLE ccFindFirstFile(const NQ_WCHAR *srchPath, CCFindFileData *findFileData, NQ_BOOL extractFirst)
NQ_HANDLE ccNetworkEnumerateShares(const NQ_WCHAR *server)
NQ_BOOL ccResetCredentailsA(const NQ_CHAR *mountpoint)
NQ_WCHAR * comment
Definition: ccapi.h:388
NQ_BOOL ccSetExclusiveAccessToFileA(NQ_CHAR *fileName, NQ_BOOL makeExclusive)
NQ_HANDLE ccNetworkEnumerateServers(const NQ_WCHAR *domain)
NQ_BOOL ccNetworkSetDefaultDomainA(const NQ_CHAR *domain)
NQ_WCHAR * name
Definition: ccapi.h:368
NQ_BOOL ccSetFilePointer(NQ_HANDLE handle, NQ_INT64 *offset, NQ_INT method)
NQ_HANDLE ccCreateFileA(const NQ_CHAR *fileName, NQ_INT access, NQ_INT shareMode, NQ_INT locality, NQ_BOOL writeThrough, NQ_UINT16 attributes, NQ_INT createAction, NQ_INT openAction)
NQ_UINT32 lastWriteTimeLow
Definition: ccapi.h:266
NQ_UINT32 lastWriteTimeHigh
Definition: ccapi.h:267
NQ_INT userLogonType
Definition: ccapi.h:350
void * NQ_HANDLE
Definition: udapi.h:46
NQ_UINT32 type
Definition: ccapi.h:369
NQ_UINT32 serverCapabilities
Definition: ccapi.h:326
NQ_GUID ccGetServerId(const NQ_WCHAR *mountpoint)
NQ_BOOL ccFlushFile(NQ_HANDLE handle)
NQ_HANDLE ccCreateFile(const NQ_WCHAR *fileName, NQ_INT access, NQ_INT shareMode, NQ_INT locality, NQ_BOOL writeThrough, NQ_UINT16 attributes, NQ_INT createAction, NQ_INT openAction)
NQ_UINT32 lastWriteTimeHigh
Definition: ccapi.h:247
NQ_UINT32 fileSizeLow
Definition: ccapi.h:272
NQ_BOOL ccDeleteFileA(const NQ_CHAR *fileName)
NQ_BOOL ccServerSideDataCopy(NQ_WCHAR *srcPath, NQ_WCHAR *dstPath, void *context, CCServerSideCopyCallback *callBack)
NQ_UINT32 allocationSizeLow
Definition: ccapi.h:270
NQ_UINT32 ccGetNTStatus(void)
NQ_UINT32 numberOfLinks
Definition: ccapi.h:274
CCSStatistics statistics
Definition: ccapi.h:353
NQ_UINT32 fileSizeHigh
Definition: ccapi.h:232
NQ_UINT32 fileSizeLow
Definition: ccapi.h:250
void ccNetworkCacheSet(NQ_UINT32 timeout)
NQ_UINT32 fileNameLength
Definition: ccapi.h:254
NQ_BOOL ccDomainUpdateSecretA(const NQ_CHAR *domain, const NQ_CHAR *computer, const AMCredentialsA *admin, NQ_BYTE secret[16])
NQ_BOOL ccGetDiskFreeSpace(const NQ_WCHAR *pathName, NQ_UINT *sectorsPerCluster, NQ_UINT *bytesPerSector, NQ_UINT *freeClusters, NQ_UINT *totalClusters, NQ_UINT *fsType, NQ_UINT *serialNumber)
NQ_UINT32 type
Definition: ccapi.h:361
NQ_GUID ccGetServerIdA(const NQ_CHAR *mountpoint)
NQ_STATUS ccSetMinSecurityLevel(NQ_INT level)
NQ_UINT32 ccConfigGetTimeout(void)
NQ_BOOL ccServerSideDataCopyA(NQ_CHAR *srcPath, NQ_CHAR *dstPath, void *context, CCServerSideCopyCallback *callBack)
NQ_BOOL ccGetFileInformationByHandle(NQ_HANDLE handle, CCFileInfo *fileInfo)
CCSStatistics statistics
Definition: ccapi.h:341
struct CCFileInfo_t FileInfo_t
NQ_BOOL ccReadFile(NQ_HANDLE hndl, NQ_IOBufPos buffer, NQ_UINT count, NQ_UINT *readSize)
NQ_UINT NQ_COUNT
Definition: udapi.h:32
NQ_UINT32 creationTimeHigh
Definition: ccapi.h:224
NQ_UINT16 NQ_WCHAR
Definition: udapi.h:45
NQ_INT ccAddMountA(const NQ_CHAR *mountPoint, const NQ_CHAR *remotePath, NQ_BOOL connect)
NQ_WCHAR * comment
Definition: ccapi.h:370
NQ_HANDLE ccNetworkEnumerateServersA(const NQ_CHAR *domain)
NQ_UINT32 lastAccessTimeLow
Definition: ccapi.h:244
NQ_BOOL ccMoveFileA(const NQ_CHAR *oldFilename, const NQ_CHAR *newFilename)
NQ_UINT32 changeTimeLow
Definition: ccapi.h:248
unsigned char NQ_BYTE
Definition: udapi.h:27
unsigned short NQ_UINT16
Definition: udapi.h:39
NQ_BOOL ccSetFileAttributesA(const NQ_CHAR *fileName, NQ_UINT32 attributes)
NQ_UINT serialNumber
Definition: ccapi.h:308
NQ_UINT32 volumeSerialNumber
Definition: ccapi.h:269
CCServerInfo serverInfo
Definition: ccapi.h:340
NQ_BOOL ccGetDiskFreeSpaceExA(const NQ_CHAR *pathName, NQ_UINT *sectorsPerCluster, NQ_UINT *bytesPerSector, NQ_UINT64 *freeClusters, NQ_UINT64 *totalClusters, NQ_UINT *fsType, NQ_UINT *serialNumber)
NQ_BOOL ccSetFileAttributes(const NQ_WCHAR *fileName, NQ_UINT32 attributes)
NQ_BOOL ccGetFileInformationByName(const NQ_WCHAR *fileName, CCFileInfo *fileInfo)
NQ_UINT32 lastAccessTimeHigh
Definition: ccapi.h:265
CCSmbDialect dialect
Definition: ccapi.h:325
NQ_UINT32 ccGetFileAttributesA(const NQ_CHAR *fileName)
NQ_BYTE minorVersion
Definition: ccapi.h:380
NQ_BOOL ccCifsGetSMB1Support(void)
NQ_TIME creationTime
Definition: ccapi.h:349
NQ_UINT32 numberOfLinks
Definition: ccapi.h:293
NQ_BYTE majorVersion
Definition: ccapi.h:389
NQ_BOOL ccResetCredentails(const NQ_WCHAR *mountpoint)
NQ_BOOL ccIsExclusiveAccessToFile(NQ_WCHAR *fileName)
NQ_BOOL ccNetworkGetShareInfoA(const NQ_CHAR *server, const NQ_CHAR *share, NQ_UINT16 *type, NQ_CHAR *remarkBuffer, NQ_INT bufferSize)
NQ_UINT32 lastWriteTimeLow
Definition: ccapi.h:227
NQ_UINT64 allocationSize
Definition: ccapi.h:291
NQ_UINT32 changeTimeHigh
Definition: ccapi.h:249
void ccCloseAllConnections(void)
NQ_UINT64 fileIndex
Definition: ccapi.h:294
NQ_FLOAT readAmount
Definition: ccapi.h:316
const NQ_CHAR * ccNetworkGetNextItemNameA(NQ_HANDLE handle)
NQ_BOOL ccTransportRestartRecieveThread()
NQ_UINT32 lastWriteTimeLow
Definition: ccapi.h:246
const NQ_WCHAR * ccNetworkGetDefaultDomain()
NQ_BOOL ccCloseHandle(NQ_HANDLE handle)
NQ_UINT32 timeLow
Definition: ccapi.h:214
NQ_BOOL ccValidateUserByCredentials(NQ_WCHAR *server, const AMCredentials *userCredentials)
NQ_WCHAR * serverName
Definition: ccapi.h:351
NQ_BOOL ccSetFileTime(NQ_HANDLE handle, CCFileTime *pCreation, CCFileTime *pLastAccess, CCFileTime *pLastWrite)
NQ_BOOL ccValidateUserByCredentialsA(NQ_CHAR *server, const AMCredentialsA *userCredentials)
NQ_BOOL ccRemoveDirectoryA(const NQ_CHAR *pathName)
NQ_BOOL ccDeleteFile(const NQ_WCHAR *fileName)
NQ_COUNT numIps
Definition: ccapi.h:328
NQ_WCHAR * name
Definition: ccapi.h:376
NQ_BOOL ccWriteFile(NQ_HANDLE hndl, NQ_IOBufPos buffer, NQ_UINT count, NQ_UINT *writtenSize)
NQ_UINT fsType
Definition: ccapi.h:307
NQ_BOOL ccFindClose(NQ_HANDLE handle)
NQ_UINT32 creationTimeHigh
Definition: ccapi.h:263
NQ_BOOL ccCreateDirectoryA(const NQ_CHAR *pathName)
int NQ_INT
Definition: udapi.h:28
NQ_UINT64 lastAccessTime
Definition: ccapi.h:287
NQ_BOOL ccMoveFile(const NQ_WCHAR *oldFilename, const NQ_WCHAR *newFilename)
NQ_BOOL ccNetworkCloseHandle(NQ_HANDLE handle)
NQ_UINT32 creationTimeLow
Definition: ccapi.h:223
NQ_UINT32 fileIndexHigh
Definition: ccapi.h:276
NQ_UINT32 ccErrorToSmbStatus(NQ_STATUS nqError)
NQ_BOOL ccGetFileTime(NQ_HANDLE handle, CCFileTime *pCreation, CCFileTime *pLastAccess, CCFileTime *pLastWrite)
NQ_BOOL ccDomainLogonA(const NQ_CHAR *domain, const NQ_CHAR *computer, const AMCredentialsA *admin, NQ_BYTE secret[16])
NQ_BOOL ccSetExclusiveAccessToFile(NQ_WCHAR *fileName, NQ_BOOL makeExclusive)
NQ_BOOL ccReadFileAsync(NQ_HANDLE hndl, NQ_IOBufPos buffer, NQ_UINT count, void *context, void(*callback)(NQ_STATUS, NQ_UINT, void *))
void ccThreadUnsubscribe(void)
struct CCFindFileDataA FindFileDataA_t
NQ_CHAR * serverName
Definition: ccapi.h:339
CCNetDomainItem * ccNetworkGetNextDomainItem(NQ_HANDLE handle)
NQ_INT ccRemoveMountA(const NQ_CHAR *mountPoint)
NQ_BOOL ccNetworkSetDefaultDomain(const NQ_WCHAR *domain)
NQ_UINT32 fileAttributes
Definition: ccapi.h:241
NQ_UINT32 type
Definition: ccapi.h:387
NQ_BOOL ccNetworkGetShareInfo(const NQ_WCHAR *server, const NQ_WCHAR *share, NQ_UINT16 *type, NQ_WCHAR *remarkBuffer, NQ_INT bufferSize)
NQ_INT ccAddMountWithCreds(const NQ_WCHAR *mountPoint, const NQ_WCHAR *remotePath, NQ_BOOL connect, const AMCredentials *userCredentials)
NQ_UINT32 fileSizeLow
Definition: ccapi.h:231
NQ_UINT32 changeTimeHigh
Definition: ccapi.h:230
NQ_UINT32 timeHigh
Definition: ccapi.h:215
int NQ_BOOL
Definition: udapi.h:30
NQ_INT serverSigningPolicy
Definition: ccapi.h:329
NQ_BOOL ccIsExclusiveAccessToFileA(NQ_CHAR *fileName)
NQ_BOOL ccSetFileSizeByNameA(const NQ_CHAR *fileName, NQ_UINT32 sizeLow, NQ_UINT32 sizeHigh)
NQ_BOOL ccGetFileSize(NQ_HANDLE handle, NQ_UINT64 *fileSize)
NQ_BOOL ccWriteFileAsync(NQ_HANDLE hndl, NQ_IOBufPos buffer, NQ_UINT count, void *context, void(*callback)(NQ_STATUS, NQ_UINT, void *))
NQ_HANDLE ccFindFirstFileA(const NQ_CHAR *srchPath, FindFileDataA_t *findFileData, NQ_BOOL extractFirst)
NQ_UINT32 allocationSizeLow
Definition: ccapi.h:233
NQ_BOOL ccDomainJoinPersistent(const NQ_WCHAR *domain, const NQ_WCHAR *computer, const AMCredentials *admin, const NQ_WCHAR *dns)
NQ_UINT32 fileIndexLow
Definition: ccapi.h:275
const NQ_CHAR * ccNetworkGetDefaultDomainA()
float NQ_FLOAT
Definition: udapi.h:52
NQ_UINT32 fileAttributes
Definition: ccapi.h:222
NQ_WCHAR * comment
Definition: ccapi.h:378
NQ_INT userLogonType
Definition: ccapi.h:338
NQ_BOOL ccGetFileAttributes(const NQ_WCHAR *fileName, NQ_UINT32 *attributes)
NQ_BOOL ccFindNextFile(NQ_HANDLE handle, CCFindFileData *findFileData)
NQ_UINT32 creationTimeLow
Definition: ccapi.h:262
NQ_UINT64 endOfFile
Definition: ccapi.h:290
NQ_BOOL ccGetFilePointer(NQ_HANDLE handle, NQ_UINT64 *offset)
NQ_UINT32 creationTimeHigh
Definition: ccapi.h:243
NQ_BOOL ccGetMountInformation(const NQ_WCHAR *mountPoint, CCMountInfo *mountPointInfo)
void(* CCServerSideCopyCallback)(NQ_STATUS status, NQ_UINT32 totalBytesWritten, NQ_UINT64 totalFileSize, void *context)
Definition: ccapi.h:206
NQ_UINT32 allocationSizeHigh
Definition: ccapi.h:271
NQ_BYTE minorVersion
Definition: ccapi.h:390
NQ_UINT32 attributes
Definition: ccapi.h:268
NQ_UINT32 lastWriteTimeHigh
Definition: ccapi.h:228
NQ_UINT32 fileSizeHigh
Definition: ccapi.h:273
NQ_UINT32 creationTimeLow
Definition: ccapi.h:242
char NQ_CHAR
Definition: udapi.h:26
NQ_BOOL ccGetDiskFreeSpaceEx(const NQ_WCHAR *pathName, CCVolumeInfo *volumeInfo)
NQ_BYTE majorVersion
Definition: ccapi.h:379
NQ_BOOL ccSetFileSizeByName(const NQ_WCHAR *fileName, NQ_UINT64 size)
NQ_BOOL ccInit(void(*fsdNotify)(NQ_INT eventId, NQ_ULONG param))
NQ_BOOL ccNetworkResetHandle(NQ_HANDLE handle)
NQ_CHAR * name
Definition: ccapi.h:360
unsigned long NQ_UINT32
Definition: udapi.h:43
NQ_UINT bytesPerSector
Definition: ccapi.h:304
void ccCifsSetSMB1Support(NQ_BOOL isSupport)
NQ_UINT64 changeTime
Definition: ccapi.h:289
NQ_BOOL ccIsInitialized(void)
CCNetServerItem * ccNetworkGetNextServerItem(NQ_HANDLE handle)
NQ_UINT64 volumeId
Definition: ccapi.h:295
NQ_BOOL ccCreateDirectory(const NQ_WCHAR *pathName)
unsigned long NQ_ULONG
Definition: udapi.h:51
NQ_BOOL ccDomainJoin(const NQ_WCHAR *domain, const NQ_WCHAR *computer, const AMCredentials *admin, NQ_BYTE secret[16])
NQ_UINT64 totalClusters
Definition: ccapi.h:306
NQ_INT ccAddMountWithCredsA(const NQ_CHAR *mountPoint, const NQ_CHAR *remotePath, NQ_BOOL connect, const AMCredentialsA *userCredentials)
NQ_HANDLE ccNetworkEnumerateSharesA(const NQ_CHAR *server)
NQ_UINT32 changeTimeLow
Definition: ccapi.h:229
void ccConfigSetTimeout(NQ_UINT32 secs)
NQ_INT ccGetMinSecurityLevel(void)
NQ_BOOL ccValidateUserA(NQ_CHAR *server)
NQ_UINT32 allocationSizeHigh
Definition: ccapi.h:234
void ccCloseHiddenConnections(void)
void ccSetSigningPolicy(NQ_BOOL enable)
NQ_INT ccRemoveMount(const NQ_WCHAR *mountPoint)
NQ_STATUS ccSetMaxSecurityLevel(NQ_INT level)
NQ_INT NQ_STATUS
Definition: udapi.h:47